<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>js的函数</title>
</head>
<body>

    <!--

    js如何调用函数？
    1. 直接调用（不建议）
    2. 通过事件触发调用

    注意：
    1. 写js代参函数时候，形参不需要var修饰。
    2. 触发调用，参考标签的属性。 如 input 的 onclick
    3. js 中没有函数重载概念，函数名如果相同，调用会按照就近原则。
    4. NaN Not a Number

    匿名函数： 在js框架中用的比较多，自己用的比较少。
    A: js常见事件名 =  function(){}
        onload = funtion(){ alert("show") }
    B: 给自定义变量赋值匿名函数
        var b = function(){}
        b();

    内置对象：
        Global: 是一个内部对象，其方法是全局方法。
            isNan()
            parseInt(x,[非必选，2-32，代表进制])

        Math: 是一个内部对象，提供基本数学函数和常数。方法和属性非全局。类似于静态类。
            Math.[{property | method}]
            // sin,cos,tan, asin, acos, atan, atan2
            // abs, ceil, floor, max, min,
            // random[0,1), sqrt, pow(x^y), log, round(四舍五入)

        Date
            var date1 = new Date();
            getyear, getMonth, getDay, getHour, getMinute,

            function showTime(){ 获取日期， }
            // 设置过多长时间干什么事情。
            setTimeout("showTime()",1000);

        String
            newString = new String("a");
            newString = "b";
            newString = new String(); newString = "c";

            属性：
            length;

            方法：
             两类方法
             A: 和java一致
             B: 把 html 标签放在了 string 两端。

            //charAt, indexOf, replace, sup(上标),
            // bold(加粗)，

        Array
            Array对象。是js中唯一的一个容器。
            A: array 中的元素可以是任意类型。
            B: js的数组长度是可变的。但是推荐使用固定长度的。
            C: 指定数组长度没有任何意义。


        RegExp 对象


    -->
    <script>

        function show() {
            alert("hello word")
        }

        function show(a,b) {
            alert(a+b)
        }
    </script>

    <script>
        function getSum(a,b){
            return a + b;
        }

    </script>

    <input type="button" value="show按钮" onclick="show()"/>
    <input type="button" value="show加法" onclick="show(10,20)"/>
    <input type="button" value="getSum" onclick="alert(getSum(10,2))"/>
</body>
</html>